Alteryxウィークリーチャレンジ#241初級やってみた!
アルテリックス?アルタリクス?どちらでもわたしは一向にかまわんッッ!の國崎です。
AlteryxをUdemyで学習したばかりの私がウィークリーチャレンジを早速やってみたので、そちらの解説記事をご紹介します。
今回のチャレンジテーマは「#241:米国のトップクリケット選手」です。
今回のチャレンジでやること
- クリケット選手の試合データが記録されたCSVから米国チームのトップ5得点者を抽出し可視化する
事前に用意されたデータとゴールを共有すると以下になります。
用意されたCSVデータ
英語でわかりづらいですが試合日や対戦国など色んなカラムが確認できます。
ゴール
上のCSVから「米国チームの最多得点者トップ5」を可視化します。
エクセルの作業だと抽出やらクレンジングやら手間のかかる作業をAlteryxならGUI上の操作で完了するということをお見せしましょう。
レッツチャレンジ!
データクレンジングでカラムの文字を整理
まずワークフローに載せたデータにデータクレンジングをつなげ、Runs(得点)のカラム内にある文字を整理します。
Runsの数字は最終的に計算しないといけないので、カラム内にある「DNB」や「82*」など数字以外の文字を取り除く必要があるためです。
数字以外の文字を取り除くために、データクレンジングを以下のようにつなげます。
これで実行を押すと以下のようにRunsの数字が数字だけになりました。
フィルターで指定したデータのレコードを抽出
続いてフィルターを使い米国チームの抽出を行います。
Teamのカラムがあるので、このカラムにフィルター条件をかけます。
先ほどのデータクレンジングにフィルターをつなげて書き出すと、以下のように米国チームのデータだけが抽出されました。
セレクトでデータ型を変換
Runsの集計をしようと思いましたが、ここであることに気づきます。
なんと最初にデータクレンジングをかけたRunsのデータ型が文字型(V_WString)になっていました。
このままではRunsの集計ができないので、データ型を数字型(Int64)に変換します。
セレクトをフィルターの先につなげて実行すると、Runsのデータを数字型(Int64)にすることができました。
集計でグループ化した合計値を出す
「1試合毎に集計されているデータ」を「選手毎のデータ」にグループ化の定義を変更し選手毎の合計得点値データに集計し直します。
集計をセレクトの先につないで、Player_Name(選手名)をグループ化にして実行します。
選手毎の合計得点値がSum_Runsという新しいカラムで作成されました。
ソートで降順に並び替える
Sum_Runsの並びを降順(数字の大きい順)に並び替えます。
ソートをつなげてSum_Runsの「順序」を降順にして実行するとデータが合計得点の多い順に並び替えられます。
サンプリングで指定した行だけ表示
今回のゴールが「最多得点者トップ5」なので、上位5名だけの表示にするよう調整します。
サンプリングをつなげて、サンプリング方法を「最初のN行」を選択し、「N=5」で実行すると、上位5名のレコードだけが表示されました。
閲覧でデータの最終確認
最終的に調整したデータを閲覧で確認します。
今回のゴールである「米国チームの最多得点者トップ5」が確認できました。
まとめ
Alteryxって超簡単じゃん!
矢でも鉄砲でも持って来いやぁって感じです。